package com.westar.base.model;

import com.westar.base.annotation.DefaultFiled;
import com.westar.base.annotation.Filed;
import com.westar.base.annotation.Identity;
import com.westar.base.annotation.Table;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;

import java.io.Serializable;
import java.util.Date;

/**
 * 实施清单分区域
 *
 * @author Lenovo
 * @ClassName： ImplementDetail
 * @Descrpition： 实施清单分区域
 */
@Table
@JsonInclude(Include.NON_NULL)
public class ImplementDetail implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * id主键
     */
    @Identity
    private Integer id;

    /**
     * 记录创建时间
     */
    @DefaultFiled
    private String recordCreateTime;

    /**
     * 清单主键
     */
    @Filed
    private String implListId;

    /**
     * 上级清单主键
     */
    @Filed
    private String appoveObject;

    /**
     * 实施清单名称
     */
    @Filed
    private String eventName;

    /**
     * 实施清单代码
     */
    @Filed
    private String promiseTimeLimit;

    /**
     * 实施清单代码
     */
    @Filed
    private String legalTimeLimit;

    /**
     * 实施清单代码
     */
    @Filed
    private String majorTerm;

    /**
     * 实施清单代码
     */
    @Filed
    private String deptId;

    /**
     * 实施清单代码
     */
    @Filed
    private String areaCode;

    /**
     * 实施清单代码
     */
    @Filed
    private String showEventCode;

    /**
     * 更新时间
     */
    @Filed
    private String updateTime;

    /****************以上主要为系统表字段********************/

    /**
     * 解析的源码信息
     */
    private String sourceStr;

    /**
     * 是否作废
     */
    private String enabled;
    /**
     * 部门编码
     */
    private String deptCodes;

    /****************以上为自己添加字段********************/

    /**
     * id主键
     *
     * @param id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * id主键
     *
     * @return Integer
     */
    public Integer getId() {
        return id;
    }

    /**
     * 记录创建时间
     *
     * @param recordCreateTime
     */
    public void setRecordCreateTime(String recordCreateTime) {
        this.recordCreateTime = recordCreateTime;
    }

    /**
     * 记录创建时间
     *
     * @return String
     */
    public String getRecordCreateTime() {
        return recordCreateTime;
    }

    /**
     * 清单主键
     *
     * @param implListId
     */
    public void setImplListId(String implListId) {
        this.implListId = implListId;
    }

    /**
     * 清单主键
     *
     * @return String
     */
    public String getImplListId() {
        return implListId;
    }

    /**
     * 上级清单主键
     *
     * @param appoveObject
     */
    public void setAppoveObject(String appoveObject) {
        this.appoveObject = appoveObject;
    }

    /**
     * 上级清单主键
     *
     * @return String
     */
    public String getAppoveObject() {
        return appoveObject;
    }

    /**
     * 实施清单名称
     *
     * @param eventName
     */
    public void setEventName(String eventName) {
        this.eventName = eventName;
    }

    /**
     * 实施清单名称
     *
     * @return String
     */
    public String getEventName() {
        return eventName;
    }

    /**
     * 实施清单代码
     *
     * @param promiseTimeLimit
     */
    public void setPromiseTimeLimit(String promiseTimeLimit) {
        this.promiseTimeLimit = promiseTimeLimit;
    }

    /**
     * 实施清单代码
     *
     * @return String
     */
    public String getPromiseTimeLimit() {
        return promiseTimeLimit;
    }

    /**
     * 实施清单代码
     *
     * @param legalTimeLimit
     */
    public void setLegalTimeLimit(String legalTimeLimit) {
        this.legalTimeLimit = legalTimeLimit;
    }

    /**
     * 实施清单代码
     *
     * @return String
     */
    public String getLegalTimeLimit() {
        return legalTimeLimit;
    }

    /**
     * 实施清单代码
     *
     * @param majorTerm
     */
    public void setMajorTerm(String majorTerm) {
        this.majorTerm = majorTerm;
    }

    /**
     * 实施清单代码
     *
     * @return String
     */
    public String getMajorTerm() {
        return majorTerm;
    }

    /**
     * 实施清单代码
     *
     * @param deptId
     */
    public void setDeptId(String deptId) {
        this.deptId = deptId;
    }

    /**
     * 实施清单代码
     *
     * @return String
     */
    public String getDeptId() {
        return deptId;
    }

    /**
     * 实施清单代码
     *
     * @param areaCode
     */
    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    /**
     * 实施清单代码
     *
     * @return String
     */
    public String getAreaCode() {
        return areaCode;
    }

    /**
     * 实施清单代码
     *
     * @param showEventCode
     */
    public void setShowEventCode(String showEventCode) {
        this.showEventCode = showEventCode;
    }

    /**
     * 实施清单代码
     *
     * @return String
     */
    public String getShowEventCode() {
        return showEventCode;
    }

    /**
     * 更新时间
     *
     * @param updateTime
     */
    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 更新时间
     *
     * @return String
     */
    public String getUpdateTime() {
        return updateTime;
    }

    /**
     * 解析的源码信息
     *
     * @return String
     */
    public String getSourceStr() {
        return sourceStr;
    }

    /**
     * 解析的源码信息
     *
     * @param sourceStr
     */
    public void setSourceStr(String sourceStr) {
        this.sourceStr = sourceStr;
    }

    /**
     * 是否作废
     *
     * @return String
     */
    public String getEnabled() {
        return enabled;
    }

    /**
     * 是否作废
     *
     * @param enabled
     */
    public void setEnabled(String enabled) {
        this.enabled = enabled;
    }

    public String getDeptCodes() {
        return deptCodes;
    }

    public void setDeptCodes(String deptCodes) {
        this.deptCodes = deptCodes;
    }

    @Override
    public String toString() {
        return "ImplementDetail{" +
                "id=" + id +
                ", recordCreateTime='" + recordCreateTime + '\'' +
                ", implListId='" + implListId + '\'' +
                ", appoveObject='" + appoveObject + '\'' +
                ", eventName='" + eventName + '\'' +
                ", promiseTimeLimit='" + promiseTimeLimit + '\'' +
                ", legalTimeLimit='" + legalTimeLimit + '\'' +
                ", majorTerm='" + majorTerm + '\'' +
                ", deptId='" + deptId + '\'' +
                ", areaCode='" + areaCode + '\'' +
                ", showEventCode='" + showEventCode + '\'' +
                ", updateTime='" + updateTime + '\'' +
                ", sourceStr='" + sourceStr + '\'' +
                ", enabled='" + enabled + '\'' +
                ", deptCodes='" + deptCodes + '\'' +
                '}';
    }
}
